home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekikoh Dennoh Club 2
/
Gekikoh Dennoh Club Vol. 2 (Japan).7z
/
Gekikoh Dennoh Club Vol. 2 (Japan) (Track 01).bin
/
kowin
/
util
/
mclick.lzh
/
mclick.c
next >
Wrap
C/C++ Source or Header
|
1992-01-18
|
2KB
|
81 lines
/* mclick.win 1991 by H.Ogasawara (COR.) */
#include <stdio.h>
#include "wlib.h"
#define MAXLEN 0xff00
int left_mode= 0x0403,
right_mode= 0x0403;
int left_len,
right_len;
unsigned short left[MAXLEN/2],
right[MAXLEN/2];
ClickExec( wp, info )
WindowID wp;
EventInfo *info;
{
if( info->option == EventMouseSwitch ){
if( info->LeftON ){
ADPCMMOD( 0 );
ADPCMOUT( left, left_mode, left_len );
}else if( info->RightON ){
ADPCMMOD( 0 );
ADPCMOUT( right, right_mode, right_len );
}
}
return FALSE;
}
pcmread( buf, file )
void *buf;
unsigned char *file;
{
int fn= OPEN( file, 0 ),
length;
if( fn >= 0 ){
length= READ( fn, buf, MAXLEN );
CLOSE( fn );
return length;
}
ConsoleOpen();
ConsolePrint( "mclock:" );
ConsolePrint( file );
ConsolePrint( "が読めません\r\n" );
return FALSE;
}
int WindowProcessLevel= 2;
WindowMain( argc, argv )
char **argv;
{
for( left_len= right_len= 0 ; --argc ;){
if( **++argv == '-' ){
switch( *++*argv ){
case 'L':
case 'l':
left_mode= ((*argv)[1]&7)*256+((*argv)[2]&3);
break;
case 'R':
case 'r':
right_mode= ((*argv)[1]&7)*256+((*argv)[2]&3);
}
}else{
if( !left_len )
left_len= pcmread( left, *argv );
else
right_len= pcmread( right, *argv );
}
}
if( left_len && right_len ){
WindowSetRootEvent( ClickExec );
}else{
ConsoleOpen();
ConsolePrint( "mclick: エラーが発生しました\r\n" );
WindowSendSignal( WindowProcessID, SignalKill, NULL );
}
}